using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class logged_Default : System.Web.UI.Page
{

    private ActivUFRJ.Classes.Usuario.Usuario usuario = ActivUFRJ.Utilitarios.Usuario.GetSessao();
    private ActivUFRJ.Classes.Artefato.Artefato artefato;

    protected void Page_Load(object sender, EventArgs e)
    {

        // valida a sessao do usuario
        ActivUFRJ.Utilitarios.Usuario.ValidarSessao(usuario);

        // valida o artefato
        artefato = new ActivUFRJ.Classes.Artefato.Artefato(Request.QueryString["ID"]);
        ActivUFRJ.Utilitarios.Validar.Artefato(artefato);


        //if (!IsPostBack)
        //{
            CarregarComentarios();
            CarregarControles();
        //}
        MostrarAba();
    }

    private void MostrarAba()
    {
        int indiceAba = 0;
        string categoria;
        try
        {
            categoria = Request.QueryString["categ"];
            if (categoria == "ExibirComentarios") indiceAba = 1;
        }
        catch { }
        MultiViewComentario.ActiveViewIndex = indiceAba;
    }

    private void CarregarControles()
    {
        // link da esquerda....
        hlVoltarAPaginaDoArtefato.NavigateUrl = "Artefato.aspx?ID=" + artefato.ID.ToString();
        hlVoltarAPaginaArtefatoSalvo.NavigateUrl = "Artefato.aspx?ID=" + artefato.ID.ToString();

        // mensagem de:
        lblDe.Text = usuario.NomeCompleto + " (" + usuario.Email + ")";
        lblNomeUsuario.Text = usuario.NomeCompleto;

        // mensagem para:
        lblPara.Text = artefato.Autor.NomeCompleto + " (" + artefato.Autor.Email + ")";

        // em:
        lblEm.Text = System.DateTime.Now.ToLongDateString();

        // nome do artefato
        lblNomeArtefato.Text = artefato.Nome;

    }

    protected void btnEnviar_Click(object sender, EventArgs e)
    {
        ActivUFRJ.Classes.Artefato.Comentario comentario = new ActivUFRJ.Classes.Artefato.Comentario();
        
        comentario.Artefato = artefato;
        comentario.Remetente = usuario;
        comentario.Mensagem = tbComentario.Text;

        bool salvo = comentario.SalvarComentario(true);

        if (salvo)
        {
            MultiViewEnviarMensagem.ActiveViewIndex = 1;
        }
        else Server.Transfer(ActivUFRJ.Sistema.Paginas.DefaultErrorPage);

    }

    protected void btnCancelar_Click(object sender, EventArgs e)
    {
        Server.Transfer("Artefato.aspx?ID=" + artefato.ID.ToString());
    }

    protected void lbLerMensagens_Click(object sender, EventArgs e)
    {
        MultiViewComentario.ActiveViewIndex = 1;
    }

    protected void lnbEnviarMensagem02_Click(object sender, EventArgs e)
    {
        MultiViewComentario.ActiveViewIndex = 0;
    }

    private void CarregarComentarios()
    {
        dataListUltimosComentarios.DataSource = ActivUFRJ.Classes.Artefato.MgrComentario.GetComentariosDT(artefato, -1);
        dataListUltimosComentarios.DataBind();

        if (dataListUltimosComentarios.Items.Count == 0) lblNenhumComentario.Visible = true;

    }

}
